.class public abstract Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;
.super Lcom/nemustech/tiffany/world/TFAnimation;
.source "TFHolder.java"


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/nemustech/tiffany/world/TFHolder;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x401
    name = "MoveAnimation"
.end annotation


# instance fields
.field protected mAcceleration:F

.field protected mAutoRepositionDuration:I

.field protected mAutoRepositionMode:Z

.field protected mINITIAL_V:F

.field protected mInitialS:F

.field protected mInitialV:F

.field protected mObjectInertia:F

.field protected mOriginalAutoRepositionValue:Z

.field protected mS:F

.field protected mV:F

.field final synthetic this$0:Lcom/nemustech/tiffany/world/TFHolder;


# direct methods
.method public constructor <init>(Lcom/nemustech/tiffany/world/TFHolder;Lcom/nemustech/tiffany/world/TFHolder;)V
    .locals 2
    .parameter
    .parameter "holder"

    .prologue
    const/4 v1, 0x1

    .line 1724
    iput-object p1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    .line 1725
    invoke-direct {p0}, Lcom/nemustech/tiffany/world/TFAnimation;-><init>()V

    .line 1973
    const/high16 v0, 0x3f80

    iput v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mObjectInertia:F

    .line 1974
    iput-boolean v1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAutoRepositionMode:Z

    .line 1975
    iput-boolean v1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mOriginalAutoRepositionValue:Z

    .line 1976
    const/16 v0, 0xc8

    iput v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAutoRepositionDuration:I

    .line 1986
    const v0, 0x3b83126f

    iput v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mINITIAL_V:F

    .line 1726
    iput-object p2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mSubject:Lcom/nemustech/tiffany/world/TFObject;

    .line 1727
    return-void
.end method


# virtual methods
.method protected calcDuration(FFF)F
    .locals 1
    .parameter "initialV"
    .parameter "finalV"
    .parameter "accel"

    .prologue
    .line 1956
    sub-float v0, p2, p1

    div-float/2addr v0, p3

    return v0
.end method

.method protected calcS(FFFF)F
    .locals 3
    .parameter "initialS"
    .parameter "initialV"
    .parameter "accel"
    .parameter "t"

    .prologue
    .line 1964
    mul-float v0, p2, p4

    add-float/2addr v0, p1

    mul-float v1, p3, p4

    mul-float/2addr v1, p4

    const/high16 v2, 0x4000

    div-float/2addr v1, v2

    add-float/2addr v0, v1

    return v0
.end method

.method protected calcV(FFF)F
    .locals 1
    .parameter "initialV"
    .parameter "accel"
    .parameter "t"

    .prologue
    .line 1960
    mul-float v0, p2, p3

    add-float/2addr v0, p1

    return v0
.end method

.method public getHolder()Lcom/nemustech/tiffany/world/TFHolder;
    .locals 2

    .prologue
    .line 1968
    const-class v0, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v0

    .line 1969
    :try_start_0
    iget-object p0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mSubject:Lcom/nemustech/tiffany/world/TFObject;

    .end local p0
    check-cast p0, Lcom/nemustech/tiffany/world/TFHolder;

    monitor-exit v0

    return-object p0

    .line 1970
    :catchall_0
    move-exception v1

    monitor-exit v0
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v1
.end method

.method public repositionHeadModel()Z
    .locals 1

    .prologue
    .line 1842
    const/4 v0, 0x0

    invoke-virtual {p0, v0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->repositionObjects(I)Z

    move-result v0

    return v0
.end method

.method public repositionObjects(I)Z
    .locals 10
    .parameter "duration"

    .prologue
    const/4 v9, 0x1

    const/4 v8, 0x0

    .line 1787
    const-class v5, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v5

    .line 1788
    :try_start_0
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v6

    invoke-virtual {v6}, Lcom/nemustech/tiffany/world/TFHolder;->getDeviation()F

    move-result v3

    .line 1790
    .local v3, headDeviation:F
    invoke-static {v3}, Ljava/lang/Math;->abs(F)F

    move-result v6

    const v7, 0x3a83126f

    cmpl-float v6, v6, v7

    if-lez v6, :cond_0

    if-eqz p1, :cond_0

    .line 1798
    neg-float v6, v3

    iget v7, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mObjectInertia:F

    mul-float v1, v6, v7

    .line 1799
    .local v1, distance:F
    const/high16 v6, 0x4000

    mul-float/2addr v6, v1

    int-to-float v7, p1

    div-float v4, v6, v7

    .line 1800
    .local v4, velocity:F
    int-to-float v6, p1

    div-float v0, v4, v6

    .line 1801
    .local v0, acceleration:F
    const/4 v6, 0x0

    invoke-virtual {p0, v6}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->reset(Z)V

    .line 1802
    invoke-virtual {p0, v4, v0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->startMoveAnimation(FF)V

    .line 1803
    monitor-exit v5

    move v5, v9

    .line 1829
    .end local v0           #acceleration:F
    .end local v1           #distance:F
    .end local v4           #velocity:F
    :goto_0
    return v5

    .line 1806
    :cond_0
    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    iget-boolean v6, v6, Lcom/nemustech/tiffany/world/TFHolder;->mDelayedSetItemMode:Z

    if-eqz v6, :cond_1

    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    iget-boolean v6, v6, Lcom/nemustech/tiffany/world/TFHolder;->mNeedToSetItem:Z

    if-eqz v6, :cond_1

    .line 1807
    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    const/4 v7, 0x1

    iput-boolean v7, v6, Lcom/nemustech/tiffany/world/TFHolder;->mSetItemNow:Z

    .line 1808
    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    invoke-virtual {v6}, Lcom/nemustech/tiffany/world/TFHolder;->refreshSlotIndex()V

    .line 1811
    :cond_1
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v6

    const/4 v7, 0x0

    invoke-virtual {v6, v7}, Lcom/nemustech/tiffany/world/TFHolder;->setDeviation(F)Z

    .line 1812
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v6

    invoke-virtual {v6}, Lcom/nemustech/tiffany/world/TFHolder;->requestLayout()V

    .line 1814
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getAnimationEventListener()Lcom/nemustech/tiffany/world/TFAnimation$AnimationEventListener;

    move-result-object v2

    .line 1815
    .local v2, eventListener:Lcom/nemustech/tiffany/world/TFAnimation$AnimationEventListener;
    if-eqz v2, :cond_3

    .line 1822
    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    iget-object v6, v6, Lcom/nemustech/tiffany/world/TFHolder;->mMoveAni:Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;

    invoke-virtual {v6}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->isAnimationEventListenerLocked()Z

    move-result v6

    if-nez v6, :cond_2

    .line 1823
    const/4 v6, 0x1

    iput v6, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mState:I

    .line 1825
    invoke-virtual {p0, p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->prvOnAnimationStart(Lcom/nemustech/tiffany/world/TFAnimation;)V

    .line 1827
    :cond_2
    iget-object v6, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    iget-object v6, v6, Lcom/nemustech/tiffany/world/TFHolder;->mMoveAni:Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;

    const/4 v7, 0x0

    invoke-virtual {v6, v7}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->lockAnimationEventListener(Z)V

    .line 1829
    :cond_3
    monitor-exit v5

    move v5, v8

    goto :goto_0

    .line 1831
    .end local v2           #eventListener:Lcom/nemustech/tiffany/world/TFAnimation$AnimationEventListener;
    .end local v3           #headDeviation:F
    :catchall_0
    move-exception v6

    monitor-exit v5
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v6
.end method

.method public setAutoRepositionMode(Z)V
    .locals 2
    .parameter "mode"

    .prologue
    .line 1857
    const-class v0, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v0

    .line 1858
    :try_start_0
    iput-boolean p1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAutoRepositionMode:Z

    .line 1859
    iget-boolean v1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAutoRepositionMode:Z

    iput-boolean v1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mOriginalAutoRepositionValue:Z

    .line 1860
    monitor-exit v0

    .line 1861
    return-void

    .line 1860
    :catchall_0
    move-exception v1

    monitor-exit v0
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v1
.end method

.method public setAutoRepositionMode(ZI)V
    .locals 2
    .parameter "mode"
    .parameter "duration"

    .prologue
    .line 1877
    const-class v0, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v0

    .line 1878
    :try_start_0
    invoke-virtual {p0, p1}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setAutoRepositionMode(Z)V

    .line 1879
    iput p2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAutoRepositionDuration:I

    .line 1880
    monitor-exit v0

    .line 1881
    return-void

    .line 1880
    :catchall_0
    move-exception v1

    monitor-exit v0
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v1
.end method

.method public setInertia(F)V
    .locals 2
    .parameter "inertia"

    .prologue
    .line 1851
    const-class v0, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v0

    .line 1852
    :try_start_0
    iput p1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mObjectInertia:F

    .line 1853
    monitor-exit v0

    .line 1854
    return-void

    .line 1853
    :catchall_0
    move-exception v1

    monitor-exit v0
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v1
.end method

.method public setInitialVelocity(F)V
    .locals 2
    .parameter "v"

    .prologue
    .line 1912
    const-class v0, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v0

    .line 1913
    :try_start_0
    iput p1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mINITIAL_V:F

    .line 1914
    monitor-exit v0

    .line 1915
    return-void

    .line 1914
    :catchall_0
    move-exception v1

    monitor-exit v0
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v1
.end method

.method public setMove(FF)V
    .locals 4
    .parameter "initialV"
    .parameter "accel"

    .prologue
    const/4 v3, 0x0

    .line 1893
    const-class v1, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v1

    .line 1898
    const/4 v2, 0x0

    :try_start_0
    invoke-virtual {p0, v2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->reset(Z)V

    .line 1900
    iput p1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    .line 1901
    iput p2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    .line 1902
    iget v2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    cmpl-float v2, v2, v3

    if-lez v2, :cond_0

    iget v2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    cmpl-float v2, v2, v3

    if-gtz v2, :cond_1

    :cond_0
    iget v2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    cmpg-float v2, v2, v3

    if-gez v2, :cond_2

    iget v2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    cmpg-float v2, v2, v3

    if-gez v2, :cond_2

    .line 1903
    :cond_1
    iget v2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    neg-float v2, v2

    iput v2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    .line 1906
    :cond_2
    const/4 v2, 0x0

    iget v3, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    invoke-virtual {p0, p1, v2, v3}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->calcDuration(FFF)F

    move-result v2

    const/high16 v3, 0x3f00

    add-float/2addr v2, v3

    float-to-int v0, v2

    .line 1907
    .local v0, t:I
    invoke-virtual {p0, v0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setDuration(I)V

    .line 1908
    monitor-exit v1

    .line 1909
    return-void

    .line 1908
    .end local v0           #t:I
    :catchall_0
    move-exception v2

    monitor-exit v1
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v2
.end method

.method public setMove(FI)V
    .locals 2
    .parameter "initialV"
    .parameter "duration"

    .prologue
    .line 1884
    const-class v0, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v0

    .line 1885
    const/4 v1, 0x0

    :try_start_0
    invoke-virtual {p0, v1}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->reset(Z)V

    .line 1886
    iput p1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    .line 1887
    const/4 v1, 0x0

    iput v1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    .line 1888
    invoke-virtual {p0, p2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setDuration(I)V

    .line 1889
    monitor-exit v0

    .line 1890
    return-void

    .line 1889
    :catchall_0
    move-exception v1

    monitor-exit v0
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v1
.end method

.method public setMoveOffset(I)V
    .locals 1
    .parameter "offset"

    .prologue
    .line 1918
    iget v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mINITIAL_V:F

    invoke-virtual {p0, p1, v0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveOffset(IF)V

    .line 1919
    return-void
.end method

.method public setMoveOffset(IF)V
    .locals 1
    .parameter "offset"
    .parameter "speed"

    .prologue
    .line 1926
    int-to-float v0, p1

    invoke-virtual {p0, v0, p2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveStep(FF)V

    .line 1927
    return-void
.end method

.method public setMoveOffset(II)V
    .locals 2
    .parameter "offset"
    .parameter "duration"

    .prologue
    .line 1922
    int-to-float v0, p1

    int-to-float v1, p2

    div-float/2addr v0, v1

    invoke-static {v0}, Ljava/lang/Math;->abs(F)F

    move-result v0

    invoke-virtual {p0, p1, v0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveOffset(IF)V

    .line 1923
    return-void
.end method

.method public setMoveStep(F)V
    .locals 1
    .parameter "step"

    .prologue
    .line 1930
    iget v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mINITIAL_V:F

    invoke-virtual {p0, p1, v0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveStep(FF)V

    .line 1931
    return-void
.end method

.method public setMoveStep(FF)V
    .locals 6
    .parameter "step"
    .parameter "speed"

    .prologue
    const/4 v5, 0x0

    .line 1938
    const-class v2, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v2

    .line 1939
    const/4 v0, 0x0

    .line 1940
    .local v0, remainTime:I
    :try_start_0
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->hasEnded()Z

    move-result v3

    if-nez v3, :cond_0

    .line 1941
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getDuration()I

    move-result v3

    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getTime()I

    move-result v4

    sub-int v0, v3, v4

    .line 1942
    :cond_0
    const/4 v3, 0x0

    invoke-virtual {p0, v3}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->reset(Z)V

    .line 1944
    iput p2, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    .line 1945
    const/4 v3, 0x0

    iput v3, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAcceleration:F

    .line 1946
    cmpg-float v3, p1, v5

    if-gez v3, :cond_1

    .line 1947
    iget v3, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    neg-float v3, v3

    iput v3, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    .line 1948
    :cond_1
    iget v3, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mInitialV:F

    div-float v3, p1, v3

    const/high16 v4, 0x3f00

    add-float/2addr v3, v4

    float-to-int v1, v3

    .line 1949
    .local v1, t:I
    add-int/2addr v1, v0

    .line 1950
    invoke-virtual {p0, v1}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setDuration(I)V

    .line 1951
    monitor-exit v2

    .line 1952
    return-void

    .line 1951
    .end local v1           #t:I
    :catchall_0
    move-exception v3

    monitor-exit v2
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v3
.end method

.method public setMoveStep(FI)V
    .locals 1
    .parameter "step"
    .parameter "duration"

    .prologue
    .line 1934
    int-to-float v0, p2

    div-float v0, p1, v0

    invoke-static {v0}, Ljava/lang/Math;->abs(F)F

    move-result v0

    invoke-virtual {p0, p1, v0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveStep(FF)V

    .line 1935
    return-void
.end method

.method protected setOriginalAutoRepositionMode()V
    .locals 1

    .prologue
    .line 1868
    iget-boolean v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mOriginalAutoRepositionValue:Z

    iput-boolean v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAutoRepositionMode:Z

    .line 1869
    return-void
.end method

.method protected setTempAutoRepositionMode(Z)V
    .locals 0
    .parameter "mode"

    .prologue
    .line 1864
    iput-boolean p1, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mAutoRepositionMode:Z

    .line 1865
    return-void
.end method

.method public start()V
    .locals 2

    .prologue
    .line 1763
    const-class v1, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v1

    .line 1764
    :try_start_0
    invoke-super {p0}, Lcom/nemustech/tiffany/world/TFAnimation;->start()V

    .line 1765
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mSubject:Lcom/nemustech/tiffany/world/TFObject;

    check-cast v0, Lcom/nemustech/tiffany/world/TFHolder;

    invoke-virtual {v0, p0}, Lcom/nemustech/tiffany/world/TFHolder;->onBindingAnimationStart(Lcom/nemustech/tiffany/world/TFAnimation;)V

    .line 1766
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    iget-object v0, v0, Lcom/nemustech/tiffany/world/TFHolder;->mWorld:Lcom/nemustech/tiffany/world/TFWorld;

    if-eqz v0, :cond_0

    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    iget-object v0, v0, Lcom/nemustech/tiffany/world/TFHolder;->mWorld:Lcom/nemustech/tiffany/world/TFWorld;

    invoke-static {}, Lcom/nemustech/tiffany/world/TFWorld;->requestRender()V

    .line 1767
    :cond_0
    monitor-exit v1

    .line 1768
    return-void

    .line 1767
    :catchall_0
    move-exception v0

    monitor-exit v1
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v0
.end method

.method public startMoveAnimation(FF)V
    .locals 1
    .parameter "velocity"
    .parameter "a"

    .prologue
    .line 1750
    invoke-virtual {p0, p1, p2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMove(FF)V

    .line 1751
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->start()V

    .line 1752
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v0

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFHolder;->requestLayout()V

    .line 1753
    return-void
.end method

.method public startMoveAnimation(FI)V
    .locals 1
    .parameter "velocity"
    .parameter "duration"

    .prologue
    .line 1756
    invoke-virtual {p0, p1, p2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMove(FI)V

    .line 1757
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->start()V

    .line 1758
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v0

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFHolder;->requestLayout()V

    .line 1759
    return-void
.end method

.method public startMoveAnimation(I)V
    .locals 1
    .parameter "offset"

    .prologue
    .line 1731
    invoke-virtual {p0, p1}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveOffset(I)V

    .line 1732
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->start()V

    .line 1733
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v0

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFHolder;->requestLayout()V

    .line 1734
    return-void
.end method

.method public startMoveAnimation(IF)V
    .locals 1
    .parameter "offset"
    .parameter "speed"

    .prologue
    .line 1744
    invoke-virtual {p0, p1, p2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveOffset(IF)V

    .line 1745
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->start()V

    .line 1746
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v0

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFHolder;->requestLayout()V

    .line 1747
    return-void
.end method

.method public startMoveAnimation(II)V
    .locals 1
    .parameter "offset"
    .parameter "duration"

    .prologue
    .line 1738
    invoke-virtual {p0, p1, p2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->setMoveOffset(II)V

    .line 1739
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->start()V

    .line 1740
    invoke-virtual {p0}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->getHolder()Lcom/nemustech/tiffany/world/TFHolder;

    move-result-object v0

    invoke-virtual {v0}, Lcom/nemustech/tiffany/world/TFHolder;->requestLayout()V

    .line 1741
    return-void
.end method

.method public stop()V
    .locals 3

    .prologue
    .line 1772
    const-class v1, Lcom/nemustech/tiffany/world/TFWorld;

    monitor-enter v1

    .line 1773
    :try_start_0
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->this$0:Lcom/nemustech/tiffany/world/TFHolder;

    iget-object v0, v0, Lcom/nemustech/tiffany/world/TFHolder;->mMoveAni:Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;

    const/4 v2, 0x0

    invoke-virtual {v0, v2}, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->lockAnimationEventListener(Z)V

    .line 1774
    invoke-super {p0}, Lcom/nemustech/tiffany/world/TFAnimation;->stop()V

    .line 1775
    iget-object v0, p0, Lcom/nemustech/tiffany/world/TFHolder$MoveAnimation;->mSubject:Lcom/nemustech/tiffany/world/TFObject;

    check-cast v0, Lcom/nemustech/tiffany/world/TFHolder;

    invoke-virtual {v0, p0}, Lcom/nemustech/tiffany/world/TFHolder;->onBindingAnimationEnd(Lcom/nemustech/tiffany/world/TFAnimation;)V

    .line 1776
    monitor-exit v1

    .line 1777
    return-void

    .line 1776
    :catchall_0
    move-exception v0

    monitor-exit v1
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    throw v0
.end method
